The ability to measure memory use and processor use remains an important endeavor. Software solutions are often delivered to end-users as bundles mixing different products. A single process executes several different software modules or programs, coming from different origins. In an operating system, the granularity of resource usage measurement is limited to a process and does not identify which product is actually used, e.g., program or library, and what is the proportion of each. Consequently, it is difficult to redistribute revenue proportionally to product usage. In this embodiment a product is taken as those program elements or modules that have been purposively grouped by someone or something. For instance, the following can be products: operating systems; Internet browsers; plugins for operating systems and browsers; data bundles; libraries; and software executables.
The following are hereby incorporated by reference. US patent publication 8473607 B2 disclosing a system and method for software usage. US patent publication 7636918 disclosing a system and method for tracking memory usage by software agents. US patent publication 2012/0131539 disclosing find and track information of interface usage of software libraries by other software. US patent publication 2012/0185776 disclosing analyzing resource consumption of software executing during a usage scenario. US patent publication 7107428 disclosing a memory usage tracking tool. US patent publication 2010/0325149 disclosing system and method for auditing software usage. US patent publication 7860239 disclosing a method and apparatus for metering usage of software products using multiple signatures. US patent publication 2013/0074051 disclosing tracking and analysis of usage of a software product.